<?php
/**
 * Video Manuplation class
 *
 * Used to manuplate video by using different video adapters
 *
 * @category   Core
 * @package    Core_Video
 * @copyright 
 * @author     Sandeep Manne<sandeep.manne@costrategix.com>
 */

class Core_Video
{
	public function __construct($fileName, $adapter = Core_Video_Adapter::ADAPTER_FFMPEG)
	{
		$this->_getAdapter($adapter);
        $this->_fileName = $fileName;
        if (isset($fileName)) {
            $this->open();
        }
	}
	
	public function open()
	{}
	
	public function save($destination=null, $newMimeType = null, $newFileName=null)
	{}
	
	public function rotate($angle)
	{}
	
	public function crop($top=0, $left=0, $right=0, $bottom=0)
	{}
	
	public function resize($width, $height = null)
	{}
	
	public function keepAspectRatio($value)
	{}
	
	public function quality($value)
	{}
	
	public function addWatermark($watermarkImage, $positionX=0, $positionY=0, $watermarkImageOpacity=30, $repeat=false)
	{}
	
	public function getMimeType()
	{}	
	
	protected function _getAdapter($adapter=null)
    {
        if( !isset($this->_adapter) ) {
            $this->_adapter = Core_Image_Adapter::factory( $adapter );
        }
        return $this->_adapter;
    }
	
    protected function process()
    {}
    
	public function getOriginalWidth()
	{}
	
	public function getOriginalHeight()
	{}
}